package reflect;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AutoRun {
    /*
        注解中定义属性时的格式类似于方法
        类型 名字() [default 默认值]

        如果注解中只有一个属性时，通常名字就叫value。这样的好处是在使用该
        注解并进行属性赋值时无需指定属性名，如:
        @AutoRun(123)

        否则，如果只有一个属性，并且名字不是value,比如
        int num()
        那么在使用该注解并希望给num赋值时要如下操作:
        @AutoRun(num=123)

        属性定义时可以使用default指定默认值，这样在使用注解时可以不指定对应
        属性的值，否则必须要为该属性赋值。

     */
    int value() default 1;//使用default指定默认值
}
